package cn.itcast.star.graph.core.pojo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * @author Windows
 */
@Data
@TableName("sg_user")
public class User extends  BaseEntity implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 序列化是将对象的状态信息转换为可以存储或传输的形式的过程，比如转换为字节流。
     * 这样做的主要目的是方便在不同的环境中保存和恢复对象，或者在网络上进行对象的传输。
     * 例如，当需要将对象保存到文件中，
     * 以便下次程序运行时可以重新加载该对象，或者在分布式系统中，将对象从一个节点发送到另一个节点，
     * 就需要用到序列化。
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    private String mobile;
    private String password;
    private Integer status;
    private String username;
    private String email;
    private Integer vipLevel;
    @TableLogic
    private Integer deleted;
    private String nickname;
    private String avatar;
    private Integer gender;
}